今天EBS的一支報表出現執行完成但是有Warning的情形,如下圖:
按下View Output後,直接出現xml的url,而不是常用的rdf檔
原本以為是參數下錯或程式有問題,為了驗證,所以又執行數次相同的報表,但是無論參數如何修改,結果都是一樣的。
而且程式已經上線很長的一段時間,也沒有再更動過。
這支報表有用到XML Publisher的功能,在詳過看這支報表的log時,發現有一個錯誤是The Output Post-processor is running but has not picked up this request.
並提到一個解決方案是OPP Response Timeout to a higher value may be necessary
我把Concurrent:OPP Response Timeout的值加大後問題依舊,所以問題的關鍵不在這裡。
因為執行XML Publisher的是Output Post Processor這個Concurrent Manager,所以查看一下狀態。
雖然Output Post Processor看起來好像沒有問題,但是實際上點選「Processes」->「Manager Log」查看後發現log只記錄到6個小時前。
所以我把Output Post Processor按下Restart按鈕後,再到Requests查看Restart已完成,但是Output Post Processor的狀態還是一直在Restart。
最後的方式就是按下Output Post Processor的Terminate按鈕,確定Requests「Terminate All Managers (Abort)」完成後,再按下Activate按鈕,重新產生一個新的Output Post Processor Processes後,問題解決了。
後續:在Concurrent Managers -> 點選「Output Post Processor」 -> Processes -> Manager Log,檢查log後,發現是使用者忘了給報表參數下一個期限,導致java.lang.OutOfMemoryError: Java heap space
本篇參考我的Blog:https://blog.twtnn.com/